\b0 is the user interface to the ARPANET standard File Transfer Protocol. The program allows a user to transfer files to and from a remote network site. The client host with which ftp is to communicate may be specified on the command line. If this is done, ftp will immediately attempt to establish a connection to an FTP server on that host; otherwise, ftp will enter its command interpreter and await instructions from the user. When ftp is awaiting commands from the user the prompt "ftp>" is provided to the user.
\b0 from attempting "auto-login" upon initial connection
{\rtf0\ansi{\fonttbl\f0\fmodern Courier;}
\margl40
\margr40
\pard\tx533\tx1067\tx1601\tx2135\tx2668\tx3202\tx3736\tx4270\tx4803\tx5337\f0\b0\i0\ulnone\fs24\fc0\cf0 Turns off interactive prompting during multiple file transfers
\b0 is the DARPA Internet File Transfer Prototocol server process. The server uses the TCP protocol and listens at the port specified in the ``ftp'' service specification; see services(5).\
The ftp server currently supports the following ftp requests; case is not distinguished.\
ABOR abort previous command\
ACCT specify account (ignored)\
ALLO allocate storage (vacuously)\
APPE append to a file\
CDUP change to parent of current working directory\
CWD change working directory\
DELE delete a file\
HELP give help information\
LIST give list files in a directory (``ls -lg'')\
MKD make a directory\
MODE specify data transfer mode\
NLST give name list of files in directory (``ls'')\
NOOP do nothing\
PASS specify password\
PASV prepare for server-to-server transfer\
PORT specify data connection port\
PWD print the current working directory\
QUIT terminate session\
RETR retrieve a file\
RMD remove a directory\
RNFR specify rename-from file name\
RNTO specify rename-to file name\
STOR store a file\
STOU store a file with a unique name\
STRU specify data transfer structure\
TYPE specify data transfer type\
USER specify user name\
XCUP change to parent of current working directory\
XCWD change working directory\
XMKD make a directory\
XPWD print the current working directory\
XRMD remove a directory\
The remaining ftp requests specified in Internet RFC 959 are recognized, but not implemented.\
The ftp server will abort an active file transfer only when the ABOR command is preceded by a Telnet "Interrupt Process" (IP) signal and a Telnet "Synch" signal in the command Telnet stream, as described in Internet RFC 959.\
\b ftpd
\b0 interprets file names according to the ``globbing'' conventions used by csh(1). This allows users to utilize the metacharacters ``*?[]\{\}~''.\
\b ftpd
\b0 authenticates users according to three rules.\
1) The user name must be in the password data base, /etc/passwd, and not have a null password. In this case a password must be provided by the client before any file operations may be performed.\
2) The user name must not appear in the file /etc/ftpusers.\
3) The user must have a standard shell returned by getusershell(3).\
4) If the user name is ``anonymous'' or ``ftp'', an anonymous ftp account must be present in the password file (user ``ftp''). In this case the user is allowed to log in by specifying any password (by convention this is given as the client host's name).\
In the last case, ftpd takes special measures to restrict the client's access privileges. The server performs a chroot(2) command to the home directory of the ``ftp'' user. In order that system security is not breached, it is recommended that the ``ftp'' subtree be constructed with care; the following rules are recommended.\
~ftp) Make the home directory owned by ``ftp'' and unwritable by anyone.\
~ftp/bin) Make this directory owned by the super-user and unwritable by anyone. The program ls(1) must be present to support the list commands. This program should have mode 111.\
~ftp/etc) Make this directory owned by the super-user and unwritable by anyone. The files passwd(5) and group(5) must be present for the ls command to work properly. These files should be mode 444.\
~ftp/pub) Make this directory mode 777 and owned by ``ftp''. Users should then place files which are to be accessible via the anonymous account in this directory.
{\rtf0\ansi{\fonttbl\f0\fmodern Courier;}
\margl40
\margr40
\pard\tx1140\tx2300\tx3440\tx4600\tx5760\tx6900\tx8060\tx9200\tx10360\tx11520\f0\b0\i0\ulnone\fs24\fc0\cf0 Debugging information is written to the syslog
{\rtf0\ansi{\fonttbl\f0\fmodern Courier;}
\margl40
\margr40
\pard\tx1140\tx2300\tx3440\tx4600\tx5760\tx6900\tx8060\tx9200\tx10360\tx11520\f0\b0\i0\ulnone\fs24\fc0\cf0 Each ftp session is logged in the syslog
{\rtf0\ansi{\fonttbl\f0\fmodern Courier;}
\margl40
\margr40
\pard\tx1140\tx2300\tx3440\tx4600\tx5760\tx6900\tx8060\tx9200\tx10360\tx11520\f0\b0\i0\ulnone\fs24\fc0\cf0 The inactivity timeout period will be set to timeout
timeout
{\rtf0\ansi{\fonttbl\f0\fmodern Courier;}
\margl40
\margr40
\pard\tx520\tx1060\tx1600\tx2120\tx2660\tx3200\tx3720\tx4260\tx4800\tx5320\f0\b0\i0\ulnone\fs24\fc0\cf0 The timeout in seconds
\pard\tx533\tx1067\tx1601\tx2135\tx2668\tx3202\tx3736\tx4270\tx4803\tx5337\f0\b0\i0\ulnone\fs24\fc0\cf0 The
\b login
\b0 command is used when a user initially signs on, or it may be used at any time to change from one user to another. The latter case is the one summarized above and described here. See "How to Get Started" for how to dial up initially. If login is invoked without an argument, it asks for a user name, and, if appropriate, a password. Echoing is turned off (if possible) during the typing of the password, so it will not appear on the written record of the session. After a successful login, accounting files are updated and the user is informed of the existence of mail. The message of the day is printed, as is the time of his last login. Both are suppressed if he has a ".hushlogin" file in his home directory; this is mostly used to make life easier for non-human users, such as uucp. Login initializes the user and group IDs and the working directory, then executes a command interpreter (usually csh(1)) according to specifications found in a password file. Argument 0 of the command interpreter is the name of the command interpreter with a leading dash ("-"). Login also modifies the environment environ(7) with information specifying home directory, command interpreter, terminal type (if available) and user name. The `-p' argument causes the remainder of the environment to be preserved, otherwise any previous environment is discarded. If the file /etc/nologin exists, login prints its contents on the user's terminal and exits. This is used by shutdown(8) to stop users logging in when the system is about to go down. Login is recognized by sh(1) and csh(1) and executed directly (without forking).
\pard\tx533\tx1067\tx1601\tx2135\tx2668\tx3202\tx3736\tx4270\tx4803\tx5337\f0\b0\i0\ulnone\fs24\fc0\cf0 Causes the remainder of the environment to be preserved, otherwise any previous environment is discarded
username
{\rtf0\ansi{\fonttbl\f0\fmodern Courier;}
\margl40
\margr40
\pard\tx533\tx1067\tx1601\tx2135\tx2668\tx3202\tx3736\tx4270\tx4803\tx5337\f0\b0\i0\ulnone\fs24\fc0\cf0 The user to login as
\b0 is the login front end for the console of the NeXTSTEP(tm) environment. It allows the user to enter his login name and password, verifies those against the passwd database, and executes the Workspace program as that user.\
If there is an account for the user 'me', and that account has no password, then the loginwindow program does not actually go through the login procedure; rather, it immediately executes the Workspace for that user. This can be disabled by holding down the left mouse button while loginwindow is starting.\
If the user has an entry for the 'Workspace' parameter for the program 'loginwindow' in his defaults database, that program will be executed instead of Workspace. The workspace program is invoked with the command line\
Workspace -LoginProgram YES\
If the user name of 'exit' is given, with no password, then loginwindow immediately exits with status 0. If the user name of 'console' is given, then loginwindow immediately exits with status 1. This may be used in conjunction with the onerror feature of the ttys file.\
Before execing the Workspace program, loginwindow reads the following user parameters from the user's default database and places them in effect via the evs driver: MouseScaling InitialKeyRepeat KeyRepeat ClickTime ClickSpace AutoDimTime MouseHandedness MouseButtonsTied It also looks up the following two user parameters and places them in effect for the duration of the user's login session: PublicWindowServer umask It also clears the Pasteboard.\
PublicWindowServer is a parameter indicating whether unrestricted access to the window server on this machine should be allkowed while the user is logged in. If it is YES, then any client on any machine may connect to the window server. Otherwise, only processes descending from the Workspace or special system processes such as the printer daemon will be allowed to connect.\
umask gives an integer indicating the user's desired default umask. See the umask(2) call for more information.\
After the user has logged out, loginwindow clears the Pasteboard again and resets these parameters to their default values before logging in another user. See the Preferences application to reset these parameters.
-LogoutHook
{\rtf0\ansi{\fonttbl\f0\fmodern Courier;}
\margl40
\margr40
\pard\tx1140\tx2300\tx3440\tx4600\tx5760\tx6900\tx8060\tx9200\tx10360\tx11520\f0\b0\i0\ulnone\fs24\fc0\cf0 Provides a program for loginwindow to call after a user has logged out. The program is invoked with the name of the user who just logged out as its first argument. Like the LoginHook, the program should be given by its full pathname, and it is not called when the singleuser account (default 'me') is logged out
progname
{\rtf0\ansi{\fonttbl\f0\fmodern Courier;}
\margl40
\margr40
\pard\tx520\tx1060\tx1600\tx2120\tx2660\tx3200\tx3720\tx4260\tx4800\tx5320\f0\b0\i0\ulnone\fs24\fc0\cf0 The program to call
-HostName
{\rtf0\ansi{\fonttbl\f0\fmodern Courier;}
\margl40
\margr40
\pard\tx1140\tx2300\tx3440\tx4600\tx5760\tx6900\tx8060\tx9200\tx10360\tx11520\f0\b0\i0\ulnone\fs24\fc0\cf0 Provides a host name to be displayed in the loginwindow. If such a name is provided, it is drawn centered in the window, 153 pixels up from the bottom edge. If the host name provided is localhost, then the default host name is obtained from a gethostname call and that name is used instead
hostname
{\rtf0\ansi{\fonttbl\f0\fmodern Courier;}
\margl40
\margr40
\pard\tx520\tx1060\tx1600\tx2120\tx2660\tx3200\tx3720\tx4260\tx4800\tx5320\f0\b0\i0\ulnone\fs24\fc0\cf0 The host name to be displayed
-ImageFile
+{\rtf0\ansi{\fonttbl\f0\fmodern Courier;}
\margl40
\margr40
\pard\tx1140\tx2300\tx3440\tx4600\tx5760\tx6900\tx8060\tx9200\tx10360\tx11520\f0\b0\i0\ulnone\fs24\fc0\cf0 Provides an alternate file to use as the background of the window used by loginwindow. Normally, it loads the file /usr/lib/nextlogin.tiff and displays that as the background for loginwindow. The file used should contain an image 650 pixels wide by 230 pixels high. The image should contain two 156 pixel wide by 23 pixel high white rectangles: one at location (242,100) within the image, and one at location (242,53) within the image (these are the rectangles where the name and password are entered). Subject to these restrictions, the rest of the image may contain whatever is desired. See the Icon program for help in creating TIFF files
filename
{\rtf0\ansi{\fonttbl\f0\fmodern Courier;}
\margl40
\margr40
\pard\tx520\tx1060\tx1600\tx2120\tx2660\tx3200\tx3720\tx4260\tx4800\tx5320\f0\b0\i0\ulnone\fs24\fc0\cf0 The file to use as the background
-DefaultUser
{\rtf0\ansi{\fonttbl\f0\fmodern Courier;}
\margl40
\margr40
\pard\tx1140\tx2300\tx3440\tx4600\tx5760\tx6900\tx8060\tx9200\tx10360\tx11520\f0\b0\i0\ulnone\fs24\fc0\cf0 Provides for designating any particular username as the name to use when checking for single-user status (see the description of the treatment of the me account above). If the DefaultUser option is given, then that user name, rather than me, will be checked, and if it has no password, it will be logged in
{\rtf0\ansi{\fonttbl\f0\fmodern Courier;}
\margl40
\margr40
\pard\tx520\tx1060\tx1600\tx2120\tx2660\tx3200\tx3720\tx4260\tx4800\tx5320\f0\b0\i0\ulnone\fs24\fc0\cf0 The username to use
-PowerOffDisabled
{\rtf0\ansi{\fonttbl\f0\fmodern Courier;}
\margl40
\margr40
\pard\tx1140\tx2300\tx3440\tx4600\tx5760\tx6900\tx8060\tx9200\tx10360\tx11520\f0\b0\i0\ulnone\fs24\fc0\cf0 Allows the System Administrator to prevent users from casually powering down the system. If this option is supplied, then pressing the power key while loginwindow is active has no affect. Additionally, if the user presses the power key while in the Workspace, then the Workspace will exit but the system will not be powered down. This may be used to make it less likely for users to casually power down a system that is providing some shared service, e.g., a print server
\b0 connects your terminal on the current local host system lhost to the remote host system rhost. Each host has a file /etc/hosts.equiv which contains a list of rhost's with which it shares account names. (The host names must be the standard names as described in rsh(1C).) When you rlogin as the same user on an equivalent host, you don't need to give a password. Each user may also have a private equivalence list in a file .rhosts in his login directory. Each line in this file should contain an rhost and a username separated by a space, giving additional cases where logins without passwords are to be permitted. If the originating user is not equivalent to the remote user, then a login and password will be prompted for on the remote machine as in login(1). To avoid some security problems, the .rhosts file must be owned by either the remote user or root. The remote terminal type is the same as your local terminal type (as given in your environment TERM variable). The terminal or window size is also copied to the remote system if the server supports the option, and changes in size are reflected as well. All echoing takes place at the remote site, so that (except for delays) the rlogin is transparent. Flow control via ^S and ^Q and flushing of input and output on interrupts are handled properly. The optional argument -8 allows an eight-bit input data path at all times; otherwise parity bits are stripped except when the remote side's stop and start characters are other than ^S/^Q. The argument -L allows the rlogin session to be run in litout mode. A line of the form ``~.'' disconnects from the remote host, where ``~'' is the escape character. Similarly, the line ``~^Z'' (where ^Z, control-Z, is the suspend character) will suspend the rlogin session. Substitution of the delayedsuspend character (normally ^Y) for the suspend character suspends the send portion of the rlogin, but allows output from the remote system. A different escape character may be specified by the -e option. There is no space separating this option flag and the argument character.
\b0 is the server for the rlogin(1C) program. The server provides a remote login facility with authentication based on privileged port numbers from trusted hosts.\
Rlogind listens for service requests at the port indicated in the ``login'' service specification; see services(5). When a service request is received the following protocol is initiated:\
1) The server checks the client's source port. If the port is not in the range 0-1023, the server aborts the connection.\
2) The server checks the client's source address and requests the corresponding host name (see gethostbyaddr(3N), hosts(5) and named(8)). If the hostname cannot be determined, the dot-notation representation of the host address is used.\
Once the source port and address have been checked, rlogind allocates a pseudo terminal (see pty(4)), and manipulates file descriptors so that the slave half of the pseudo terminal becomes the stdin , stdout , and stderr for a login process. The login process is an instance of the login(1) program, invoked with the -r option. The login process then proceeds with the authentication process as described in rshd(8C), but if automatic authentication fails, it reprompts the user to login as one finds on a standard terminal line.\
The parent of the login process manipulates the master side of the pseduo terminal, operating as an intermediary between the login process and the client instance of the rlogin program. In normal operation, the packet protocol described in pty(4) is invoked to provide ^S/^Q type facilities and propagate interrupt signals to the remote programs. The login process propagates the client terminal's baud rate and terminal type, as found in the environment variable, ``TERM''; see environ(7). The screen or window size of the terminal is requested from the client, and window size changes from the client are propagated to the pseudo terminal.
\pard\tx533\tx1067\tx1601\tx2135\tx2668\tx3202\tx3736\tx4270\tx4803\tx5337\f0\b\i0\ulnone\fs24\fc0\cf0 su
\b0 demands the password of the specified userid, and if it is given, changes to that userid and invokes the Shell sh(1) or csh(1) without changing the current directory. The user environment is unchanged except for HOME and SHELL, which are taken from the password file for the user being substituted (see environ(7)). The new user ID stays in force until the Shell exits. If no userid is specified, ``root'' is assumed. To .I su to ``root'', you must supply the root password To remind the super-user of his responsibilities, the Shell substitutes `#' for its usual prompt. The -f option prevents csh(1) from executing the .cshrc file; thus making su start up faster. The option simulates a full login. An alternative implementation of su is in /bin/su.wheel. This version, which is shipped without the setuid-root bit turned on, allows users in the ``wheel'' group (group 0) to su to ``root'' using either their own password or the root password. This version offers more convenience, but if your site is concerned about the increased potential for security problems, you should continue to use the standard version of su.
\pard\tx533\tx1067\tx1601\tx2135\tx2668\tx3202\tx3736\tx4270\tx4803\tx5337\f0\b0\i0\ulnone\fs24\fc0\cf0 Prevents csh(1) from executing the .cshrc file; thus making su start up faster
{\rtf0\ansi{\fonttbl\f0\fmodern Courier;}
\margl40
\margr40
\pard\tx533\tx1067\tx1601\tx2135\tx2668\tx3202\tx3736\tx4270\tx4803\tx5337\f0\b0\i0\ulnone\fs24\fc0\cf0 Simulates a full login
userid
{\rtf0\ansi{\fonttbl\f0\fmodern Courier;}
\margl40
\margr40
\pard\tx520\tx1060\tx1600\tx2120\tx2660\tx3200\tx3720\tx4260\tx4800\tx5320\f0\b0\i0\ulnone\fs24\fc0\cf0 The userid to switch to
\b0 demands the password of the specified userid, and if it is given, changes to that userid and invokes the Shell sh(1) or csh(1) without changing the current directory.\
\pard\tx1140\tx2300\tx3440\tx4600\tx5760\tx6900\tx8060\tx9200\tx10360\tx11520\fc0\cf0 This version, different from standard
\b su
\b0 , is shipped without the setuid-root bit turned on, allowing users in the ``wheel'' group (group 0) to su to ``root'' using either their own password or the root password. This version offers more convenience, but if your site is concerned about the increased potential for security problems, you should continue to use the standard version of
The user environment is unchanged except for HOME and SHELL, which are taken from the password file for the user being substituted (see environ(7)). The new user ID stays in force until the Shell exits. If no userid is specified, ``root'' is assumed. To .I su to ``root'', you must supply the root password To remind the super-user of his responsibilities, the Shell substitutes `#' for its usual prompt. The -f option prevents csh(1) from executing the .cshrc file; thus making su start up faster. The option simulates a full login. An alternative implementation of su is in /bin/su.wheel. This version, which is shipped without the setuid-root bit turned on, allows users in the ``wheel'' group (group 0) to su to ``root'' using either their own password or the root password. This version offers more convenience, but if your site is concerned about the increased potential for security problems, you should continue to use the standard version of su.
\b0 is used to communicate with another host using the TELNET protocol. If telnet is invoked without arguments, it enters command mode, indicated by its prompt ("telnet>"). In this mode, it accepts and executes the commands listed below. If it is invoked with arguments, it performs an open command (see below) with those arguments. Once a connection has been opened, telnet enters an input mode. The input mode entered will be either "character at a time" or "line by line" depending on what the remote system supports. In "character at a time" mode, most text typed is immediately sent to the remote host for processing. In "line by line" mode, all text is echoed locally, and (normally) only completed lines are sent to the remote host. The "local echo character" (initially "^E") may be used to turn off and on the local echo (this would mostly be used to enter passwords without the password being echoed). In either mode, if the localchars toggle is TRUE (the default in line mode; see below), the user's quit, intr, and flush characters are trapped locally, and sent as TELNET protocol sequences to the remote side. There are options (see toggle autoflush and toggle autosynch below) which cause this action to flush subsequent output to the terminal (until the remote host acknowledges the TELNET sequence) and flush previous terminal input (in the case of quit and intr). While connected to a remote host, telnet command mode may be entered by typing the telnet "escape character" (initially "^]"). When in command mode, the normal terminal editing conventions are available.
{\rtf0\ansi{\fonttbl\f0\fmodern Courier;}
\margl40
\margr40
\pard\tx520\tx1060\tx1600\tx2120\tx2660\tx3200\tx3720\tx4260\tx4800\tx5320\f0\b0\i0\ulnone\fs24\fc0\cf0 The host to telnet to
{\rtf0\ansi{\fonttbl\f0\fmodern Courier;}
\margl40
\margr40
\pard\tx520\tx1060\tx1600\tx2120\tx2660\tx3200\tx3720\tx4260\tx4800\tx5320\f0\b0\i0\ulnone\fs24\fc0\cf0 The port to telnet to
\b0 is a server which supports the DARPA standard TELNET virtual terminal protocol. Telnetd is invoked by the internet server (see inetd(8)), normally for requests to connect to the TELNET port as indicated by the /etc/services file (see services(5)).\
\b telnetd
\b0 operates by allocating a pseudo-terminal device (see pty(4)) for a client, then creating a login process which has the slave side of the pseudo-terminal as stdin, stdout, and stderr. Telnetd manipulates the master side of the pseudo-terminal, implementing the TELNET protocol and passing characters between the remote client and the login process.\
When a TELNET session is started up,
\b telnetd
\b0 sends TELNET options to the client side indicating a willingness to do remote echo of characters, to suppress go ahead, and to receive terminal type information from the remote client. If the remote client is willing, the remote terminal type is propagated in the environment of the created login process. The pseudo-terminal allocated to the client is configured to operate in "cooked" mode, and with XTABS and CRMOD enabled (see tty(4)).\
\b telnetd
\b0 is willing to do: echo, binary, suppress go ahead, and timing mark. Telnetd is willing to have the remote client do: binary, terminal type, and suppress go ahead.
\pard\tx533\tx1067\tx1601\tx2135\tx2668\tx3202\tx3736\tx4270\tx4803\tx5337\f0\b\i0\ulnone\fs24\fc0\cf0 tip
\b0 establishs a full-duplex connection to another machine, giving the appearance of being logged in directly on the remote cpu. It goes without saying that you must have a login on the machine (or equivalent) to which you wish to connect.